<?xml version="1.0"?>
<doc>
    <assembly>
        <name>MVVMBase</name>
    </assembly>
    <members>
        <member name="T:AMEE.MVVMBase.PropertyChangedBase">
            <summary>
            Base class, providing Property Change events.<para>
            Derived classes can use the inherited OnPropertyChange method to fire the PropertyChanged event.</para>
            </summary>
        </member>
        <member name="M:AMEE.MVVMBase.PropertyChangedBase.OnPropertyChanged(System.String)">
            <summary>
            Called when [property changed].
            </summary>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="E:AMEE.MVVMBase.PropertyChangedBase.PropertyChanged">
            <summary>
            Occurs when a property value changes.
            </summary>
        </member>
        <member name="T:AMEE.MVVMBase.RelayCommand">
            <summary>
            ICommand
            </summary>
        </member>
        <member name="T:AMEE.MVVMBase.RelayCommand`1">
            <summary>
            Selbstdefiniertes UI-Command, um Commands in der UI an Methoden der zugrundeliegenden Logik zu binden.
            <para>
            Diese Klasse wurde durch die neueste Library der Autoren ersetzt (<a href="http://mvvmfoundation.codeplex.com/" />)!
            </para>
            <para><u><b>Zweck:</b></u><br />
            WPF-Variante des MVC-Patterns. Die View ist entkoppelt von Daten und Logik. Die Anzeige erfolgt über Bindings an Properties der ViewModels,
            die wiederum Daten und Logik (Model) für eine View zusammenfassen. Um Befehle, bspw. ausgelöst durch einen ButtonKlick an die Logik weiterzureichen,
            ist es besser dafür Commands zu benutzen als Events. Denn Events werden innerhalb der View verarbeitet, die ja von der Logik entkoppelt ist.</para>
            <para>Diese Implemtiereung von <code>ICommand</code> dient als generalisiertes Relais. Bei der Instanziierung braucht man lediglich eine Methode <i>execute</i>
            vom Delegate-Typ <code>Action&lt;object&gt;</code>und optional eine Methode <i>canExecute</i>
            vom Delegate-Typ <code>Predicate&lt;object&gt;</code> zu übergeben. <i>execute</i> sorgt die für die Ausführung des Befehls, <i>canExecute</i>
            gibt an, ob der Befehl gerade ausgeführt werden kann oder darf.</para>
            <para>Die GUI kann den Methoden Zusatzinformationen durch einen Funktions-Paramer vom Typ <code>object</code> übergeben.
            </para>
            </summary>
            <typeparam name="pType">The type of the execute, canExecute parameter.</typeparam>
        </member>
        <member name="M:AMEE.MVVMBase.RelayCommand`1.#ctor(System.Action{`0})">
            <summary>
            Erzeugt ein neuses Command, das die übergebene Delegate-Methode ausführt.<br/>
            Dieses Command kann immer ausgeführt werden (CanExecute liefert immer true).
            </summary>
            <param name="execute">Ausführende Methode - vom Typ <see cref="T:System.Action`1"/></param>
        </member>
        <member name="M:AMEE.MVVMBase.RelayCommand`1.#ctor(System.Action{`0},System.Predicate{`0})">
            <summary>
            Erzeugt ein neuses Command, das die übergebene Delegate-Methode ausführt.<br/>
            Dieses Command kann nur ausgeführt werden, wenn die übergebene Prüfmethode true liefert
            (wird von CanExecute benutzt).
            </summary>
            <param name="execute">Ausführende Methode - vom Typ <see cref="T:System.Action`1"/></param>
            <param name="canEcexute">Prüfmethode vom Typ <see cref="T:System.Predicate`1"/></param>
        </member>
        <member name="M:AMEE.MVVMBase.RelayCommand`1.CanExecute(System.Object)">
            <summary>
            Iherited from ICommand
            </summary>
            <param name="parameter"></param>
            <returns>
            </returns>
        </member>
        <member name="M:AMEE.MVVMBase.RelayCommand`1.CanExecute(`0)">
            <summary>
            Defines the method that determines whether the command can execute in its current state.
            </summary>
            <param name="parameter">Data used by the command.  If the command does not require data to be passed, this object can be set to null.</param>
            <returns>
            true if this command can be executed; otherwise, false.
            </returns>
        </member>
        <member name="M:AMEE.MVVMBase.RelayCommand`1.Execute(System.Object)">
            <summary>
            Iherited from ICommand
            </summary>
            <param name="parameter"></param>
        </member>
        <member name="M:AMEE.MVVMBase.RelayCommand`1.Execute(`0)">
            <summary>
            Defines the method to be called when the command is invoked.
            </summary>
            <param name="parameter">Data used by the command.  If the command does not require data to be passed, this object can be set to null.</param>
        </member>
        <member name="E:AMEE.MVVMBase.RelayCommand`1.CanExecuteChanged">
            <summary>
            Occurs when changes occur that affect whether or not the command should execute.
            </summary>
        </member>
        <member name="M:AMEE.MVVMBase.RelayCommand.#ctor(System.Action{System.Object})">
            <summary>
            Erzeugt ein neuses Command, das die übergebene Delegate-Methode ausführt.<br/>
            Dieses Command kann immer ausgeführt werden (CanExecute liefert immer true).
            </summary>
            <param name="execute">Ausführende Methode - vom Typ <see cref="T:System.Action`1"/></param>
        </member>
        <member name="M:AMEE.MVVMBase.RelayCommand.#ctor(System.Action{System.Object},System.Predicate{System.Object})">
            <summary>
            Erzeugt ein neuses Command, das die übergebene Delegate-Methode ausführt.<br/>
            Dieses Command kann nur ausgeführt werden, wenn die übergebene Prüfmethode true liefert
            (wird von CanExecute benutzt).
            </summary>
            <param name="execute">Ausführende Methode - vom Typ <see cref="T:System.Action`1"/></param>
            <param name="canEcexute">Prüfmethode vom Typ <see cref="T:System.Predicate`1"/></param>
        </member>
        <member name="T:AMEE.MVVMBase.ViewModelBase">
            <summary>
            The view Model base class.<para>
            Provides PropertyChanged Events, bindable to WPF-View.</para>
            </summary>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:AMEE.MVVMBase.ViewModelBase"/> class.
            </summary>
            <remarks>Calls the protected Initialize method as asynchronous Task</remarks>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase.OnDispose">
            <summary>
            Override this method to handle a call of Dispose.
            </summary>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase.OnPropertyChanged(System.String)">
            <summary>
            Fires PropertyChange Event. You might override this method, if you want additional handling.
            </summary>
            <param name="propertyName"></param>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase.Initialize">
            <summary>
            Initializes this instance.<para>
            Called by constructor. Override, to perform initialization tasks. See also InitializationCompleted event.</para>
            </summary>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase.InitializationCompletedCallback(System.IAsyncResult)">
            <summary>
            Callback method for the async initialization.
            </summary>
            <param name="result">The result.</param>
        </member>
        <member name="E:AMEE.MVVMBase.ViewModelBase.PropertyChanged">
            <summary>
            Occurs when a property value changes.
            </summary>
        </member>
        <member name="E:AMEE.MVVMBase.ViewModelBase.InitializationCompleted">
            <summary>
            Occurs when the initialization is completed.
            </summary>
        </member>
        <member name="T:AMEE.MVVMBase.ViewModelBase`1">
            <summary>
            The view Model base class with reference to underling, changeable object (model).<para>
            Provides PropertyChanged Events, bindable to WPF-View.</para>
            </summary>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase`1.#ctor(`0)">
            <summary>
            Initializes a new instance of the <see cref="T:AMEE.MVVMBase.ViewModelBase"/> class.
            </summary>
            <remarks></remarks>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase`1.GetHashCode">
            <summary>
            Returns a hash code for this instance.
            </summary>
            <returns>
            A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. 
            </returns>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase`1.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to this instance.
            </summary>
            <param name="obj">The <see cref="T:System.Object"/> to compare with this instance.</param>
            <returns>
              <c>true</c> if the specified <see cref="T:System.Object"/> is equal to this instance; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:AMEE.MVVMBase.ViewModelBase`1.Equals(AMEE.MVVMBase.ViewModelBase{`0})">
            <summary>
            Determines whether the specified <see cref="T:AMEE.MVVMBase.ViewModelBase`1"/> is equal to this instance.
            </summary>
            <param name="other">The <see cref="T:AMEE.MVVMBase.ViewModelBase`1"/> to compare with this instance.</param>
            <returns>
              <c>true</c> if the specified <see cref="T:AMEE.MVVMBase.ViewModelBase`1"/> is equal to this instance; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="P:AMEE.MVVMBase.ViewModelBase`1.Model">
            <summary>
            The Model encapsulated by this ViewModel.
            </summary>
            <remarks>If you change this, all needed PropertyChanged events will be raised automatically.</remarks>
        </member>
    </members>
</doc>
